home *** CD-ROM | disk | FTP | other *** search
- {
- Demo program to test the DATES3 unit. Has minimal error checking for
- all keyboard input to the program.
- }
-
- program testdate;
-
- uses dates3,dos;
-
- var
- month,day,year:word;
- months,days,years:integer; input:real;
- datenum:longint;
- i:byte; buff:string;
-
-
- begin
- writeln;
- repeat
- writeln('Enter numbers only for ALL input to program.');
- write('Enter Month: ');
- readln(input);
- month:=abs(trunc(input));
- write('Enter Day: ');
- readln(input);
- day:=abs(trunc(input));
- write('Enter Year: ');
- readln(input);
- year:=abs(trunc(input));
- until validdate(month,day,year);
- datenum:=datenumber(month,day,year);
- writeln('The Datenumber for ',month,'/',day,'/',year,' is: ',datenum);
- writeln('The values of the 3 bytes in the sortable string are:');
- buff:=numstring(datenum);
- for i:=1 to 3 do
- writeln('Byte #',i,': ',ord(buff[i]));
- writeln('Reconstructed Datenumber from sortable string: ',stringnum(buff));
- write('The reconstructed date for that datenumber is: ');
- numberdate(datenum,month,day,year);
- writeln(month,'/',day,'/',year);
- writeln('Day of week number is: ',daynumber(datenum));
- writeln('The day is: ',daystring(daynumber(datenum)));
- writeln('The month is: ',monthstring(month));
- writeln('Todays datenumber is: ',today);
- if datenum<=today then
- writeln('Age today if born on ',month,'/',day,'/',year,' is ',agetoday(datenum))
- else
- writeln('NO AGE - Date is after today');
- write('Increase/Decrease Months by: ');
- readln(input);
- months:=trunc(input);
- write('Increase/Decrease Days by: ');
- readln(input);
- days:=trunc(input);
- write('Increase/Decrease Years by: ');
- readln(input);
- years:=trunc(input);
- writeln('You selected: M=',months,' D=',days,' Y=',years);
- datenum:=bumpdate(datenum,months,days,years);
- writeln('New datenum for added/subtracted MDY is: ',datenum);
- numberdate(datenum,month,day,year);
- writeln('The NEW date with added/subtracted MDY is: ',month,'/',day,'/',year);
- end.